package com.framework.bdf4j.msg.entity.domain;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 消息基础表
 *
 * @author shan.deng
 * @date 2020-08-03 11:35:03
 */
@Data
@TableName("sys_messages")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "消息基础表")
public class SysMessages extends Model<SysMessages> {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId
    @ApiModelProperty(value="主键")
    private Integer msgId;
    /**
     * 消息类型，数据字典项《msg_type》
     */
    @ApiModelProperty(value="消息类型，数据字典项《msg_type》")
    private String msgType;
    /**
     * 消息标题
     */
    @ApiModelProperty(value="消息标题")
    private String msgTitle;
    /**
     * 消息内容(支持HTML格式保存)
     */
    @ApiModelProperty(value="消息内容(支持HTML格式保存)")
    private String msgContent;
    /**
     * 状态(0:新建,1:发送)
     */
    @ApiModelProperty(value="状态(0:新建,1:发送)")
    private String msgStatus;
    /**
     * 发送渠道，数据字典《msg_channel》
     */
    @ApiModelProperty(value="发送渠道，数据字典《msg_channel》")
    private String sendChannel;

    /**
     * 接收范围，1部分，2全部
     */
    @ApiModelProperty(value = "接收范围")
    private String receiveRange;
    /**
     * 发送方式，1实时，2定时
     */
    @ApiModelProperty(value="发送方式，1实时，2定时")
    private String sendType;
    /**
     * 定时发送规则，cron表达式
     */
    @ApiModelProperty(value="定时发送规则，cron表达式")
    private String sendRule;
    /**
     * 0-正常，1-删除
     */
    @ApiModelProperty(value="0-正常，1-删除")
    @TableLogic
    private String delFlag;
    /**
     * 创建人ID
     */
//    @TableField(fill = FieldFill.INSERT)
    @ApiModelProperty(value="创建人ID")
    private Integer createBy;
    /**
     * 创建时间
     */
//    @TableField(fill = FieldFill.INSERT)
    @ApiModelProperty(value="创建时间")
    private Date createTime;
    /**
     * 更新人ID
     */
//    @TableField(fill = FieldFill.INSERT_UPDATE)
    @ApiModelProperty(value="更新人ID")
    private Integer updateBy;
    /**
     * 更新时间
     */
//    @TableField(fill = FieldFill.INSERT_UPDATE)
    @ApiModelProperty(value="更新时间")
    private Date updateTime;
}
